/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package educar.abmMateria;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;
import javax.swing.JOptionPane;
import educar.models.Materia;

/**
 *
 * @author Marce
 */
public class ModificarMateriaController implements ActionListener {
    
    private AgregarMateriaView agregarMateriaView;
    private String vector[] = new String[3];    
    private MateriaController materiaControl;
    private int fila;
    private String codMateria;
    
  // <editor-fold defaultstate="collapsed" desc="Constructor">
    public ModificarMateriaController(MateriaController materiaController){        
        materiaControl = materiaController;
        agregarMateriaView = new AgregarMateriaView();
        agregarMateriaView.setActionListener(this);
    }
 // </editor-fold>  
    
// <editor-fold defaultstate="collapsed" desc="Action setView">    
    public void setView(Vector registro, int fil) {
        fila = fil;
        codMateria = (String) registro.elementAt(1);
        agregarMateriaView.setTitulo("Modificar una Materia");
        agregarMateriaView.setCodmateria((String) registro.elementAt(1));
        agregarMateriaView.setNombre((String) registro.elementAt(2));
        agregarMateriaView.setDNIDocente((String) registro.elementAt(3));
        agregarMateriaView.setVisible(true);
    }
// </editor-fold>  
    
 // <editor-fold defaultstate="collapsed" desc="Metodos ActionPermormed">     
    @Override
    public void actionPerformed(ActionEvent e) {
        Object source = e.getSource();
        if (agregarMateriaView.getJbCancelar() == source){
            agregarMateriaView.dispose();
        }
        if (agregarMateriaView.getJbAceptar() == source){
            if (!((agregarMateriaView.getCodmateria().length() == 0) || (agregarMateriaView.getNombre().length() == 0))) {
                vector[0] = agregarMateriaView.getCodmateria();
                vector[1] = agregarMateriaView.getNombre(); 
                vector[2] = agregarMateriaView.getDNIDocente();
                Materia materia = new Materia(vector);                
                if (materia.setMateriaByCodmateria(codMateria)) {                             
                            materiaControl.actualizarFila(vector, fila);
                            agregarMateriaView.dispose();
                } else {
                    JOptionPane.showMessageDialog(null,"Ya existe un registro con el código de materia "+ agregarMateriaView.getCodmateria()+".","proyecto 2012",JOptionPane.WARNING_MESSAGE);
                }
            } else {
                JOptionPane.showMessageDialog(null,"Existe al menos un campo sin completar.\n\nRevise los campos ingresados","proyecto 2012",JOptionPane.WARNING_MESSAGE);
            }
        }
    }
// </editor-fold>  
    
    
}  //fin clase ModificarMateriaController.